I. Field of the Invention
The present invention relates to CDMA (Code Division Multiple Access) cellular telephone for wireless wide area cellular networks WAN's, local area networks LAN's, personal area networks PAN's and wireless data communications with data rates up to multiple T1 (1.544 Mbps) and higher (>100 Mbps), and to optical CDMA. Applications are mobile, point-to-point and satellite communication networks. More specifically the present invention relates to a new and novel means for spreading the CDMA orthogonal code over multi-scales to improve bit error rate BER performance, reduce timing requirements, support higher order modulations with correspondingly higher data rates, support power control over the spread bandwidth, and support frequency and time domain equalization.
II. Description of the Related Art
Current CDMA spread spectrum art is represented by the applications to cellular communication links between users and base stations for CDMA2000 and W-CDMA which implement the signal processing in equations (1), (2), (3) and FIGS. 1,2,3 using Walsh orthogonal CDMA channelization codes to generate orthogonal variable spreading factor OVSF codes for multiple data rate users. Walsh codes are Hadamard codes rearranged in increasing sequency order where sequency is the rate of phase rotations over the code length and is the equivalent of frequency in the fourier domain. This scenario considers CDMA communications spread over a common frequency band B for each of the communication channels. These CDMA communications channels for each of the multiple rate users are defined by assigning a unique Walsh orthogonal spreading code to each user. This Walsh code has a maximum length of Nc chips with Nc=2M where M is an integer, with shorter lengths Nc/2, Nc/4, . . . , 4, 2 chips assigned to users with data rates equal to 2, 4, . . . , Nc/2 data symbols per Nc block code length. OVSF is equivalent to assigning multiple codes of length Nc to these users so as to support the required data rate for each user. A user with data rate equal to 2 symbols per Nc is assigned 2 of the Nc codes, with a data rate equal to 4 symbols per Nc the user is assigned 4 of the Nc codes, and so forth. This invention disclosure will use this OVSF block code equivalency without any limitations on the disclosure of this invention. Each communications link consists of a transmitter, link, and receiver, as well as interfaces and control. In the transmitter, the user chips are modulated with the assigned orthogonal code and the output signal is spread or covered with one or more pseudo-noise PN sequences or codes over the frequency band B of the communications links. The PN codes for CDMA2000 and W-CDMA are a long PN code which is 2-phase and real followed by a short PN code which is complex and 4-phase. Covering and spreading are considered equivalent for this invention disclosure. Signal output of the covered orthogonal encoded data is modulated or filtered with a waveform ψ(t), up-converted, and transmitted.
Equations (1) give parameters, codes, and power spectral density PSD which is Ψ(f) for the current CDMA encoding and decoding. Scenario parameters 1 are the maximum number of user symbols Nc occupying the CDMA communications links for ideal communications, Tc is the time interval between contiguous CDMA chips or equivalently the chip spacing, user symbol rate 1/Ts=1/NcTc is the orthogonal code repetition rate, and the complex user data symbol Z(u,k) for user u and CDMA code block k is the amplitude and phase encoded user symbol input to the CDMA encoding in FIG. 2. Index u=0, 1, . . . , Nc−1 is either the data symbol index or the code index depending on the application. Index n=0, 1 . . . , Nc−1 is either the code chip index or the encoded chip index depending on the application.
Current CDMA Parameters, Codes, and PSD (1)
1 Scenario Parameters                Nc=Number of user symbols and orthogonal code chips        Tc=CDMA chip spacing or repetition interval        Ts=User symbol soacing        1/Ts=1/NcTc=User symbol rate        Z(u,k)=User data symbol u for code block k        
2 Orthogonal Walsh Code Matrix C
                              C          =                    ⁢                      Code            ⁢                                                  ⁢            matrix                          ,                              N            c                    ⁢                                          ⁢          rows          ⁢                                          ⁢          of          ⁢                                          ⁢                      N            c                    ⁢                                          ⁢          code          ⁢                                          ⁢          vectors                                        =                ⁢                              [                          C              ⁡                              (                                  u                  ,                  n                                )                                      ]                    ⁢                                          ⁢          matrix          ⁢                                          ⁢          of          ⁢                                          ⁢          elements          ⁢                                          ⁢                      C            ⁡                          (                              u                ,                n                            )                                                                        C          ⁢                      (                          u              ,              n                        )                          =                ⁢                  {                                    +              1                        ,                          -              1                                }                                        =                ⁢                              exp            ⁡                          (                              jθ                ⁡                                  (                                      u                    ,                    n                                    )                                            )                                ⁢                                          ⁢          chip          ⁢                                          ⁢          n          ⁢                                          ⁢          of          ⁢                                          ⁢          code          ⁢                                          ⁢          vector          ⁢                                          ⁢          u                    
3 PN Covering or Spreading Codes CC for Chip n at User Sample Index k
                                          C            c                    ⁡                      (                          n              ,              k                        )                          =                ⁢                  exp          ⁡                      (                                          jθ                c                            ⁡                              (                                  n                  ,                  k                                )                                      )                                                  =                ⁢                  PN          ⁢                                          ⁢          chip          ⁢                                          ⁢          n          ⁢                                          ⁢          of          ⁢                                          ⁢          code          ⁢                                          ⁢          block          ⁢                                          ⁢          k                    
4 PSD Ψ(f) of the CDMA Baseband Signal z(t)
                              Ψ          ⁡                      (            f            )                          =                ⁢                  ∫                                                    R                z                            ⁡                              (                                  Δ                  ⁢                                                                          ⁢                  t                                )                                      ⁢                          ⅇ                                                -                  2                                ⁢                π                ⁢                                                                  ⁢                f                ⁢                                                                  ⁢                Δ                ⁢                                                                  ⁢                t                                      ⁢                          ⅆ                              (                                  Δ                  ⁢                                                                          ⁢                  t                                )                                      ⁢                                                  ⁢            Fourier            ⁢                                                  ⁢            transform            ⁢                                                  ⁢            of            ⁢                                                  ⁢                          R                              z                ⁢                                                                                                                              =                ⁢                  ∫                                                    R                ψ                            ⁡                              (                Δt                )                                      ⁢                          ⅇ                                                -                  2                                ⁢                π                ⁢                                                                  ⁢                f                ⁢                                                                  ⁢                Δ                ⁢                                                                  ⁢                t                                      ⁢                          ⅆ                              (                                  Δ                  ⁢                                                                          ⁢                  t                                )                                                                            =                ⁢                              a            0                    ⁢                                                                  ψ                ⁡                                  (                  f                  )                                                                    2                    ⁢                                          ⁢          PSD          ⁢                                          ⁢          of          ⁢                                          ⁢          CDMA          ⁢                                          ⁢          signal                    
wherein
                                                        ψ              ⁡                              (                f                )                                      =                        ⁢                          Fourier              ⁢                                                          ⁢              transform              ⁢                                                          ⁢              of              ⁢                                                          ⁢                              ψ                ⁡                                  (                  t                  )                                                              ⁢                                                                                                        R              z                        ⁡                          (                              Δ                ⁢                                                                  ⁢                t                            )                                =                    ⁢                      ∫                                          ψ                ⁡                                  (                  t                  )                                            ⁢                              ψ                ⁡                                  (                                      t                    +                                          Δ                      ⁢                                                                                          ⁢                      t                                                        )                                            ⁢                              ⅆ                t                            ⁢                                                          ⁢              autocorrelation              ⁢                                                          ⁢              of              ⁢                                                          ⁢                              z                ⁡                                  (                  t                  )                                                                                                  =                    ⁢                                                    R                ψ                            ⁡                              (                                  Δ                  ⁢                                                                          ⁢                  t                                )                                      ⁢                                                  ⁢            autocorrelation            ⁢                                                  ⁢            of            ⁢                                                  ⁢                          ψ              ⁡                              (                t                )                                                                                              a            0                    =                    ⁢                      Scaling            ⁢                                                  ⁢            factor                                                        =                    ⁢                      Average            ⁢                                                  ⁢            power            ⁢                                                  ⁢            level            ⁢                                                  ⁢            of            ⁢                                                  ⁢            user            ⁢                                                  ⁢            symbols                                                        =                    ⁢                      E            ⁢                          {                                                Z                  ⁡                                      (                                          u                      ,                      k                                        )                                                  ⁢                Z                *                                  (                                      u                    ,                    k                                    )                                            }                        ⁢                          /                        ⁢                          T              s                                                wherein    ⁢                  ⁢    Z    *                  ⁢    is    ⁢                  ⁢    the    ⁢                  ⁢    complex    ⁢                  ⁢    conjugate    ⁢                  ⁢    of    ⁢                  ⁢    Z    ⁢                  ⁢    and    ⁢                  ⁢    it    ⁢                  ⁢    is    ⁢                  ⁢    assumed    ⁢                  ⁢    the    ⁢                  ⁢          Z      ⁡              (                  u          ,          k                )              ⁢                  ⁢    are    ⁢                  ⁢    statistically    ⁢                  ⁢    independent    ⁢                  ⁢    with    ⁢                  ⁢    zero    ⁢                  ⁢    cross    ⁢          -        ⁢    correlation  
CDMA orthogonal code 2 can be defined by the orthogonal matrix C whose rows are the code vectors. PN covering or spreading code 3 is the composite of a long PN code followed by a short PN code extending over several orthogonal code repetitions {k} or equivalently data symbol sampling times {k} and is represented by the phase encoded symbol exp(jθ(n,k)) for chip (n,k), “exp” is the complex exponential, and j=√(−1). PSD Ψ(f) 4 is equal to the PSD |ψ(f)|2 of the waveform to within a scaling factor a0.
Transmitter equations (2) describe the current Walsh CDMA encoding of the input user complex symbols Z(u,k) using the orthogonal Walsh code C for each set k of user symbols and which includes summing the encoded chips over the users and covering the summed user chips with PN codes to generate the current CDMA encoded complex chips Z(n,k) 5. The PN codes uniformly spread the orthogonal encoded chips over the available wideband B and improve the correlation performance for time offsets and for cross-talk with other data blocks. Analog implementation 6 uses a digital-to-analog
Current CDMA Encoding for Transmitter (2)
5 CDMA Encoding of the User Symbols
                              Z          ⁡                      (                          n              ,              k                        )                          =                ⁢                              ∑            u                    ⁢                                    Z              ⁡                              (                                  u                  ,                  k                                )                                      ⁢                          C              ⁡                              (                                  u                  ,                  n                                )                                      ⁢                                          C                C                            ⁡                              (                                  n                  ,                  k                                )                                                                            =                ⁢                              ∑            u                    ⁢                                    Z              ⁡                              (                                  u                  ,                  k                                )                                      ⁢                          exp              ⁡                              [                                                      jθ                    ⁡                                          (                                              u                        ,                        n                                            )                                                        +                                                            jθ                      c                                        ⁡                                          (                                              n                        ,                        k                                            )                                                                      ]                                                        
6 Analog Implementation for Generating the CDMA Complex Baseband Signal z(t)
                    z        ⁡                  (          t          )                    =                        ∑                      k            ,            n                          ⁢                              Z            ⁡                          (                              n                ,                k                            )                                ⊗                      ψ            ⁡                          (                              t                -                                  t                  ⁡                                      (                                          n                      ,                      k                                        )                                                              )                                            )    where                                          t            ⁡                          (                              n                ,                k                            )                                =                    ⁢                      CDMA            ⁢                                                  ⁢            data            ⁢                                                  ⁢            chip            ⁢                                                  ⁢                          (                              n                ,                k                            )                        ⁢                                                  ⁢            time            ⁢                                                  ⁢            indicator                                                        ⊗                      =                        ⁢                          Convolution              ⁢                                                          ⁢              operation                                                                    ψ          =                    ⁢                      CDMA            ⁢                                                  ⁢            pulse            ⁢                                                  ⁢            waveform                              converter DAC followed by filtering to generate z(t). This signal processing is represented in 6 as the convolution of the stream of symbols Z(n,k) with the CDMA chip waveform ψ(t) to generate the analog signal z(t) from the current CDMA encoding. In practice a sample-and-hold circuit following the DAC generates a pulse for each symbol and the stream of analog contiguous pulses is convolved with ψ(t) and filtered by a roofing filter to further attenuate the sidelobes of the wideband B spectrum
Receiver equations (3) describe the current CDMA decoding which decodes and decovers the received encoded chip estimates {circumflex over (Z)}(n,k) of the transmitter chips Z(n,k) in the transmitter, to generate estimates {circumflex over (Z)}(u,k) of the user data symbols Z(u,k). Input signal {circumflex over (Z)}(n,k) 7 to the current CDMA decoding is the received signal after it has been down-converted, synchronized, analog-to-digital ADC converted, and chip detected to remove the pulse waveform.
Current CDMA Decoding for Receiver (3)
7 Receiver Front End Provides Estimates Z(n,k) of the Encoded Transmitter Chip Symbols Z(n,k)
8 Orthogonality Property of the Walsh Matrix C
                    ∑        n            ⁢                        C          ⁡                      (                          u              ,              n                        )                          ⁢                              C            *                    ⁡                      (                          n              ,                              u                ~                                      )                                =                                      c                                    -          2                    ⁢              δ        ⁡                  (                      u            ,                          u              ~                                )                    ⁢                          ⁢      where                  C      *        =          complex      ⁢                          ⁢      conjugate      ⁢                          ⁢      of      ⁢                          ⁢      C                                                δ            ⁡                          (                              u                ,                                  u                  ~                                            )                                =                    ⁢                      Delta            ⁢                                                  ⁢            function            ⁢                                                  ⁢            of            ⁢                                                  ⁢            u            ⁢                                                  ⁢            and            ⁢                                                  ⁢                          u              ~                                                                    =                    ⁢                                    1              ⁢                                                          ⁢              for              ⁢                                                          ⁢              u                        =                          u              ~                                                                    =                    ⁢                      0            ⁢                                                  ⁢            otherwise                                                c              =          Norm      ⁢                          ⁢      or      ⁢                          ⁢      length      ⁢                          ⁢      of      ⁢                          ⁢      row      ⁢                          ⁢      vectors      ⁢                          ⁢      c      ⁢                          ⁢      of      ⁢                          ⁢      C      
9 Decovering Property of PN Code Cc Cc(n,k)Cc*(n,k)=1
10 Decoding Algorithm
            Z      ^        ⁡          (              u        ,        k            )        =            N      c              -        1              ⁢                  ∑        n            ⁢                                    Z            ^                    ⁡                      (                          n              ,              k                        )                          ⁢                  C          c                *                  (                      n            ,            k                    )                ⁢        C        *                  (                      n            ,            u                    )                    
Orthogonality 8 of the Walsh code matrix C and the decovering of Cc 9 are used to construct the algorithm 10 for decoding the received input signals to recover estimates {circumflex over (Z)}(u,k) of the user symbols Z(u,k) in the transmitter. Norm is the square root of the length of the row vector c of C and is equal to the square root of the inner product of c with itself and for the current Walsh this norm is equal to √Nc.
FIG. 1 is a plot of the CDMA power spectral density PSD Ψ(f)=a0|ψ(f)|21 as a function of the frequency offset f 2. The PSD occupies the frequency band B 3 centered at dc (f=0) and extending over the frequency interval B=(1+α)/Tc 4 where α is the bandwidth expansion parameter of the waveform ψ(t) which accommodates the rolloff of the PSD with frequency. For convenience in this invention disclosure it is assumed that the waveform ψ is an ideal Wavelet waveform disclosed in (Ser. No. 09/826,118) with α=0. Total power P 4 is the integrated value of the PSD over the frequency bandwidth B and is normalized to P=1. For the ideal current CDMA the PSD is flat over this B.
FIG. 2 depicts a representative embodiment of the CDMA transmitter signal processing for the forward and reverse CDMA links between the base station and the users for CDMA2000 and W-CDMA that implements the CDMA Walsh channelization encoding and scrambling of the data for transmission. Data inputs to the transmitter CDMA signal processing are the inphase (real axis) data symbols R(uR,k) 118 and quadrature (imaginary axis) data symbols I(uI,k) 119 of the complex data symbols Z(u,k)=R(uR,k)+jI(uI,k). A Walsh encoder 121 spreads and channelizes the data by encoding with a real Walsh code 120 the inphase and quadrature data symbols and summing the encoded chips over the data symbols. A long real PN code 122 encodes the inphase and quadrature Walsh encoded chips 123 with a 2-phase binary code followed by a short complex PN code covering in 124,125,126. Outputs are the inphase and quadrature components 117 of the complex chips Z(n,k). The Z(n,k) are low pass filtered (LPF), modulated to waveform encode each chip symbol, and DAC (D/A) convered 127 to generate the analog waveform z(t), and not necessarily in the order listed. The complex baseband analog signal z(t)=x(t)+jy(t) with inphase x(t) 128 and quadrature y(t) 129 components is single sideband (SSB) upconverted 130,131, summed 132, and transmitted 133 as the RF v(t) at the transmission frequency f0.
FIG. 3 depicts a representative embodiment of the receiver signal processing for the forward and reverse CDMA links between the base station and the user for CDMA2000 and W-CDMA that implements the CDMA decoding for the long and short codes, the Walsh codes, and recovers estimates {circumflex over (R)}, Î 148,149 of the transmitted inphase and quadrature data symbols R 118 and I 119 in FIG. 2. Depicted are the principal signal processing that is relevant to this invention disclosure. Signal input {circumflex over (v)}(t) 134 in FIG. 3 is the estimate of the received transmitted CDMA signal v(t) 133 in FIG. 2. The inphase mixer multiplies {circumflex over (V)}(t) by the cosine 135 of the carrier frequency f0 followed by the LPF 137 which removes the mixing harmonics, and the quadrature mixer multiplies {circumflex over (v)}(t) by the sine 136 of the carrier frequency f0 followed by the LPF 137 to remove the mixing harmonics. These inphase and quadrature mixers followed by the LPF perform a Hilbert transform on v(t) to down-convert to baseband the signal at frequency f0 and to recover estimates {circumflex over (x)}, ŷ of the inphase component and the quadrature component of the transmitted complex baseband CDMA signal z(t)=x(t)+jy(t) in 128,129 FIG. 2. The {circumflex over (x)}(t) and ŷ(t) baseband signals are ADC (A/D) 140 converted and demodulated (demod.) to recover estimates of the Tx CDMA encoded inphase and quadrature baseband chip symbols. The short complex PN code cover is removed by the complex multiply in 143 using the complex conjugate of the short PN code implemented in 141,142 and the long real PN code is removed by the real multiply 145 with the long real PN code 144. The real Walsh code 147 is removed by the decoder 148. Decoded output symbols are the estimates {circumflex over (R)}, Î 148,149 of the inphase data symbols R and the quadrature data symbols I from the transmitters in 118,119 FIG. 2.
It should be obvious to anyone skilled in the communications art that this example implementation clearly defines the fundamental current CDMA signal processing relevant to this invention disclosure and it is obvious that this example is representative of the other possible signal processing approaches.